<?php

namespace App\Enums\Notification;

use App\NotificationActions\NotificationActionInterface;

enum GameNotify : string implements NotificationEnumInterface
{
    // 比赛报名
    case GameSignUp = 'game_sign_up';

    // 比赛开始
    case GameStart = 'game_start';

    // 比赛结束
    case GameEnd = 'game_end';

    // 决赛名单
    case FinalList = 'final_list';

    // 积分排名
    case ScoreRanking = 'score_ranking';

    public function label()
    {
        return match ($this) {
            self::GameSignUp => '比赛报名',
            self::GameStart => '比赛开始',
            self::GameEnd => '比赛结束',
            self::FinalList => '决赛名单',
            self::ScoreRanking => '积分排名',
        };
    }

    public function action() : NotificationActionInterface|null
    {
        return null;
    }
}
